package com.example.contestsystem.Service;

import com.example.contestsystem.Dao.StudentRepository;
import com.example.contestsystem.Entity.Student;
import org.springframework.stereotype.Service;

@Service
public class StuService {
    final StudentRepository studentRepository;

    public StuService(StudentRepository studentRepository){
        this.studentRepository = studentRepository;
    }
    public Student findByStuId(int stuAccount){
        return this.studentRepository.findByStuAccount(stuAccount);
    }

    public Student register(Student student){
        this.studentRepository.save(student);
        return this.studentRepository.findByStuAccount(student.getStuAccount());
    }

    public boolean login(Student student){
        Student destinationStu = this.studentRepository.findByStuAccount(student.getStuAccount());
        if(destinationStu != null){
            return destinationStu.getStuPassword().equals(student.getStuPassword());
        }
        return false;
    }

    public void modify(Student student){
        int destinationStuAccount = student.getStuAccount();
        if(student.getStuName()!=null){
            this.studentRepository.modifyName(student.getStuName(), destinationStuAccount);
        }
        if(student.getStuPassword()!=null){
            this.studentRepository.modifyPassword(student.getStuPassword(), destinationStuAccount);
        }
    }

    public boolean verifyStu(int stuAccount){
        return this.studentRepository.findByStuAccount(stuAccount) != null;
    }
}
